package com.atguigu.bigdata.scala.chapter02

object Scala09_Datatype_4 {

    def main(args: Array[String]): Unit = {

        // TODO 数据类型

        // 下面的代码，从逻辑上说不通，有问题
        // Byte是类型，Short也是类型，如果将Byte类型的对象给Short类型，那么必须保证这两个类型有关系
        // Byte类型不能直接转换为Short类型，因为两个类型没有关系
        // 之所以程序没有发生错误，因为编译器进行了自动的转换，称之为隐式转换
        // 隐式转换的语法比较复杂，咱们在后面有专门的章节进行讲解。
        val b : Byte = 10
        val s : Short = b
        val i : Int = s
        //val b1 : Byte = i

        /*
           java:

           String s = "123";
           Integer i = (Integer)s;（X）
           Integer j = Integer.parseInt(s);

           上面的代码是不正确的，因为java种两个类型如果想要转换，必须它们之间有关系
           这里的关系要么是继承，要么是实现
           但是String 和 Integer这两个类没有任何关系,无法完成类型转换。所以代码不对
         */

        println(i)

    }
}
